package com.ywj.collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class IteratorDemo3 {
    public static void main(String[] args) {
        Collection<String> c = new ArrayList<>();
        c.add("money");
        c.add("study");
        c.add("honor");
        c.add("happy");

        //获取迭代器对象。迭代器就好比是一个箭头，默认指向集合的0索引处
        Iterator<String> it = c.iterator();
        while (it.hasNext()) {
            String s = it.next();
            System.out.println(s);
        }

        //当上面循环结束之后，迭代器的指针已经指向了最后没有元素的位置
        //System.out.println(it.next());//报错NoSuchElementException
        //迭代器遍历完毕，指针不会复位
        System.out.println(it.hasNext());  //false

        //如果我们要继续第二次遍历集合，只能再次获取一个新的迭代器对象
        Iterator<String> it2 = c.iterator();
        while (it2.hasNext()) {
            String str = it2.next();
            System.out.println(str);
        }

    }
}
